import java.awt.Point;

public class DrawObjectEventProcessor
{
	protected static String FillTextField_TextUnchanged = null;
	protected static DrawObject FillTextField = null;

	protected static DrawObject LineStart = null;

	protected static Point MoveMousePosLast = null;

	protected static DrawObject NearObject = null;
	protected static DrawObject NearObjectLast = null;
	
	protected static Selection Selection = null;
	protected static boolean MultiSelectionExisting = false;

	protected static DrawObject SingleSelectedObject = null;
	protected static Point SingleSelectedObjectOffset = new Point(0, 0);

	protected static final String FillTextFieldMessage = "Enter TextField text";

	protected DrawObject UNDEFINED = null;
	protected Point UNDEFINED_POINT = null;
	protected Selection UNDEFINED_SELECTION = null;

	protected boolean DEFINED(Object O)
	{
		return (O != null);
	}

	protected boolean KeyboardEventsToBeProcessed(MainWindow.GUIElements GUIElements)
	{
		if (DEFINED(FillTextField))
			return false;

		if (GUIElements.GetMainWindow().IsBackUpRestoreEnabled())
			return false;

		return true;
	}
	
	protected boolean MouseEventsToBeProcessed(MainWindow.GUIElements GUIElements)
	{
		if (DEFINED(FillTextField))
			return false;

		if (GUIElements.GetMainWindow().IsBackUpRestoreEnabled())
			return false;

		return true;
	}

	protected boolean NOT(boolean Value)
	{
		return !Value;
	}

	public void TryProcessUserKeyboardAction(MainWindow.GUIElements GUIElements, KeyEventProcessor KeyEventProcessor, MouseEventProcessor MouseEventProcessor, ObjectStorage ObjectStorage, IOProgram IOProgram)
	{

	}

	public void TryProcessUserMouseAction(MainWindow.GUIElements GUIElements, KeyEventProcessor KeyEventProcessor, MouseEventProcessor MouseEventProcessor, ObjectStorage ObjectStorage, IOProgram IOProgram)
	{

	}

	protected boolean UNDEFINED(Object O)
	{
		return (O == null);
	}
}
